An operating platform for a computing device can include two layers: a system layer and a framework layer. The system layer can include an operating system kernel, libraries for accessing functionality of the operating system kernel, and an abstraction layer for interfacing with hardware. The framework layer can include services that can be used by applications executing on the operating platform and the applications. In some applications, the operations performed by the system layer and the framework layer are split among computing systems. For example, the system layer's operations may be performed by a mobile device, while the framework layer operations are performed by a server in a cloud computing configuration.
When the system and framework layers execute on separate computing devices, components of the framework layer may communicate with components of the system layer via custom streaming channels implemented in the framework layer.